<?php
/**
 * 系统控制参数
 *
 *
 */
class Sys_control extends Controller
{
	/**
	 * 构造函数
	 *
	 * 登陆检验
	 */	
	function __construct()
    {
        parent::Controller();  
		if (!$this->session->userdata('logged_in')){          		
			redirect('login');
			exit();
		}
    }
  
    // --------------------------------------------------------------------

    /**
	 * 列表
	 *
	 *
	 */	
    function index()
    {
        $this->load->model('sys_control_model');
				
		$data['sys_control'] = $this->sys_control_model->find_sys_control_row();
        
        $this->load->view('system/sys_control/list',$data);
    }
    
	// --------------------------------------------------------------------

    /**
	 * 添加
	 *
	 *
	 */	  
	function add()
    {
        $this->edit();
    }
    
	
	// --------------------------------------------------------------------

    /**
	 * 编辑
	 *
	 *
	 */	  
	function edit()
    {
		// 检验操作权限
		if (!admin_priv('sys_parameter_manage')){
			return show_message2('你没有此项操作的权限!', 'sys_control');
		} 

		$params = $this->uri->uri_to_assoc();
 
        if (!empty($params['id']) ){
            $id = $params['id'];
            $this->load->model('sys_control_model');
            $data['editing'] = $this->sys_control_model->load($id);
            if (!$data['editing']){
                return show_message2('无效id:'.$id, 'sys_control');
            }
			$data['header_text'] = '编辑系统控制参数(id:'.$data['editing']['id'].')';
			$data['action'] = 'edit';
        } else {
            $data['editing'] = array(
                'name' => null,
                'value' => null,
                'id' => null			
            );
			$data['header_text'] = '添加系统控制参数';
			$data['action'] = 'add';
        }
        
 
        
		$this->load->view('system/sys_control/edit',$data);
	}
    
	// --------------------------------------------------------------------

    /**
	 * 提交数据
	 *
	 *
	 */	 
	function save()
    {		
		// 保存后并继续编辑信号
		$re_edit = $this->input->post('re_edit');
        $action = $this->input->post('action');
        $id = $this->input->post('id');
        // name
        $name = $this->input->post('name');

        $value = $this->input->post('value');
	 
        
        // 加载表单验证类
        $this->load->library('validation');

		// 设置表单数据规则
        $this->set_save_form_rules();

		// 如果提交数据符合所设置的规则，则继续运行
		if (TRUE == $this->validation->run()){
            
			//把数据提交给模型
            $this->load->model('sys_control_model');   
            $this->sys_control_model->id = $id;	          
            $this->sys_control_model->value = $value;	 
            $this->sys_control_model->name = $name;	  		
	
			// 更新
            if ($action == "edit"){
			 
 
                $this->sys_control_model->update($id);
				if($re_edit){ 
                    show_message2('"系统控制参数(id:'.$id.')" 已保存!', 'sys_control/edit/id/'.$id);
			    }else{
					show_message2('保存成功!', 'sys_control');
				}
            
			// 添加
            } elseif ($action=='add') {
		            	
               $this->sys_control_model->create();
			   if($re_edit){ 
                   $newly_one = $this->sys_control_model->get_newly_one();	    
                   show_message2('"系统控制参数(id:'.$newly_one['id'].')" 已保存!', 'sys_control/edit/id/'.$newly_one['id']);
			   }else{
				    show_message2('保存成功!', 'sys_control');
			    }
            }

		// 对提交的数据不符合表单验证规则情况的处理
		}else{
          //
		}
	}

    // --------------------------------------------------------------------

    /**
	 * 删除角色
	 *
	 *
	 */	
	function delete()
    {
		// 检验操作权限
		if (!admin_priv('sys_parameter_delete')){
			return show_message2('你没有此项操作的权限!', 'sys_control');
		} 

		$params = $this->uri->uri_to_assoc();
        if (isset($params['id']) && ($id = $params['id']) > 0){

            $this->load->model('sys_control_model');
            if ($this->sys_control_model->delete($id)){
               return show_message2('"该代码(id:'.$id.')" 已被删除!', 'sys_control');
            } else {
                return show_message2('无效id:'.$id, 'sys_control');
            }
        }
	}
    
	// --------------------------------------------------------------------

    /**
	 * 设置表单数据规则
	 *
	 */	
	function set_save_form_rules()
    {
        $rules['value'] = 'trim|required';
		$this->validation->set_rules($rules);		
    }
    

}